package com.alibaba.citrus.ots.unified.inventory.dto.api.request;

import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @description: 调拨单请求参数
 * @author: yuhw
 * @date: 2021年09月14日 14:51
 **/
@Data
public class AllocateOrderDetailSearchDTO extends BaseDTO {

    /**
     * 单据类型 {@link AllocateOrderType}
     */
    private Integer orderType;
    /**
     * 调拨单号
     */
    private String code;
    /**
     * 外部单号
     */
    private String outAllocateOrderId;
    /**
     * 发货仓库id
     */
    private String shipWarehouseId;
    /**
     * 收货仓库id
     */
    private String receiveWarehouseId;
    /**
     * 包含货品
     */
    private List<String> scItemIdList;
    /**
     * 包含货品
     */
    private String scItemIds;
    /**
     * 单据日期起始
     */
    private String docDateBegin;
    /**
     * 单据日期结束
     */
    private String docDateEnd;
    /**
     * 创建时间起始
     */
    private Date createTimeBegin;
    /**
     * 创建时间
     */
    private Date createTimeEnd;
    /**
     * 发货时间起始
     */
    private Date shipTimeBegin;
    /**
     * 发货时间结束
     */
    private Date shipTimeEnd;
    /**
     * 预计到货时间起始
     */
    private Date expectedReceiveTimeBegin;
    /**
     * 预计到货时间结束
     */
    private Date expectedReceiveTimeEnd;
    /**
     * 到货时间起始
     */
    private Date receiveTimeBegin;
    /**
     * 到货时间结束
     */
    private Date receiveTimeEnd;
    /**
     * 状态
     */
    private Integer status;
    /**
     * 运输方式
     */
    private Integer shipMethodId;
    /**
     * 是否为退单
     */
    private boolean isReturn;

    //---总部销售--
    /**
     * 客户 是指什么?
     */
    private String customer;
    //---同公司调拨---
    /**
     * 调拨预报单号
     */
    private String allocateOrderApplyCode;
    /**
     * 外部调拨预报单号
     */
    private String outAllocateOrderApplyId;
    /**
     * 提报组织id
     */
    private String applyOrgId;
    /**
     * 收货库区id
     */
    private String receiveAreaId;
    /**
     * 申请人
     */
    private String applicant;
    /**
     * 提交时间起始
     */
    private Date submitTimeBegin;
    /**
     * 提交时间结束
     */
    private Date submitTimeEnd;
    /**
     * 确认时间起始
     */
    private Date confirmTimeBegin;
    /**
     * 确认时间结束
     */
    private Date confirmTimeEnd;

    //----跨公司---
    /**
     * 发货组织id 发货组织
     */
    private String shipOrgId;
    /**
     * 借货组织id
     */
    private String borrowOrgId;

}
